using System;
using System.Collections.Generic;
using System.Text;
using System.Runtime.InteropServices;

namespace Win32SDK
{
    public sealed class Oleaut32
    {
        public const string Dll = "Oleaut32.Dll";
        private Oleaut32()
        {
        }
        [DllImport(Oleaut32.Dll, ExactSpelling = true)]
        public static extern int VarFormat(ref object pvarIn, HandleRef pstrFormat, int iFirstDay, int iFirstWeek, uint dwFlags, [In, Out] ref IntPtr pbstr);
        [DllImport(Oleaut32.Dll, PreserveSig = false)]
        public static extern IFont OleCreateFontIndirect(tagFONTDESC fontdesc, [In] ref Guid refiid);
        [DllImport(Oleaut32.Dll, EntryPoint = "OleCreateFontIndirect", ExactSpelling = true, PreserveSig = false)]
        public static extern IFont OleCreateIFontIndirect(FONTDESC fd, ref Guid iid);
        [DllImport(Oleaut32.Dll, EntryPoint = "OleCreatePictureIndirect", ExactSpelling = true, PreserveSig = false)]
        public static extern IPictureDisp OleCreateIPictureDispIndirect([MarshalAs(UnmanagedType.AsAny)] object pictdesc, ref Guid iid, bool fOwn);
        [DllImport(Oleaut32.Dll, EntryPoint = "OleCreatePictureIndirect", ExactSpelling = true, PreserveSig = false)]
        public static extern IPicture OleCreateIPictureIndirect([MarshalAs(UnmanagedType.AsAny)] object pictdesc, ref Guid iid, bool fOwn);
        [DllImport(Oleaut32.Dll, PreserveSig = false)]
        public static extern IPicture OleCreatePictureIndirect(PICTDESC pictdesc, [In] ref Guid refiid, bool fOwn);
        [DllImport(Oleaut32.Dll, ExactSpelling = true)]
        public static extern void OleCreatePropertyFrameIndirect(OCPFIPARAMS p);
        [DllImport(Oleaut32.Dll, PreserveSig = false)]
        public static extern void GetErrorInfo(int reserved, [In, Out] ref IErrorInfo errorInfo);










    }    
    
}
